package com.nancy.java_design.prototype.demo1;

/**
 * 原型模式
 * * 原型模式是指原型实例指定创建对象的种类，并且通过拷贝这些原型创建新的对象。
 * * 原型模式是一种创建型设计模式，允许一个对象再创建另一个可定制的对象，无需知道如何创建的细节。
 * * 原型模式是一种“隔离”细节的非常好的方式，它允许你通过拷贝这些原型来创建新的对象。
 * * 原型模式是浅拷贝和深拷贝的体现。
 */
public class Certificate implements Cloneable {

    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void display() {
        System.out.println("恭喜你：" + name + ",获得2024年度优秀学生会干部证书！");
    }

    @Override
    protected Certificate clone() throws CloneNotSupportedException {
        return (Certificate)super.clone();
    }
}
